@echo off
REM RagFlow 客户端安装脚本

echo 正在安装 RagFlow 客户端...

REM 检查 Python 是否已安装
where python >nul 2>nul
if %ERRORLEVEL% neq 0 (
    echo 错误: 未检测到 Python，请先安装 Python
    pause
    exit /b 1
)

REM 创建虚拟环境
echo 正在创建虚拟环境...
python -m venv .venv

REM 激活虚拟环境
echo 正在激活虚拟环境...
call .venv\Scripts\activate.bat

REM 检查 uv 是否已安装
where uv >nul 2>nul
if %ERRORLEVEL% neq 0 (
    echo 未检测到 uv 包管理器，请先安装 uv
    echo 请访问 https://github.com/astral-sh/uv 获取安装指南
    echo 安装完成后，请重新运行此脚本
    pause
    exit /b 1
) else (
    echo 检测到 uv 已安装
)

REM 询问是否使用国内源
set /p use_cn_mirror=是否使用国内源安装依赖？(y/n): 

if /i "%use_cn_mirror%"=="y" (
    REM 使用国内源安装依赖
    echo 正在使用国内源安装项目依赖...
    uv pip install --index-url https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt
    
    REM 创建或更新 .uv/config.toml 文件
    if not exist .uv mkdir .uv
    echo [index] > .uv\config.toml
    echo url = "https://mirrors.aliyun.com/pypi/simple/" >> .uv\config.toml
    echo verify-ssl = true >> .uv\config.toml
    
    echo 已配置 uv 使用阿里云镜像源
) else (
    REM 使用默认源安装依赖
    echo 正在安装项目依赖...
    uv sync
)

echo 安装完成！
echo 您可以通过以下命令启动 RagFlow 客户端：
echo   python main.py
echo 或者：
echo   python run_gui.py
pause